package cn.edu.njtc.entity.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import org.springframework.stereotype.Component; // 如果这个POJO也作为Spring Bean，则保留

import java.io.Serializable;
import java.time.LocalDateTime;

@Setter
@Getter
@AllArgsConstructor
@ToString
@NoArgsConstructor
@Component
@TableName("tb_doctor")
@Schema(description = "医生实体")
public class Doctor implements Serializable {

    @TableId(value = "doctor_id", type = IdType.AUTO)
    @Schema(description = "医生ID")
    private Integer id;

    @TableField("doctor_name")
    @Schema(description = "医生姓名")
    private String name;

    @TableField("doctor_phone")
    @Schema(description = "医生电话")
    private String phone;

    @TableField("doctor_password")
    @Schema(description = "医生密码")
    private String password;
    ;

    @TableField("hospital_id")
    @Schema(description = "所属医院ID")
    private Integer hospitalId;

    @TableField("doctor_level")
    @Schema(description = "医生职称")
    private String level;

    @TableField("created")
    @Schema(description = "创建时间")
    private LocalDateTime created;

    @TableField("updated")
    @Schema(description = "修改时间")
    private LocalDateTime updated;

    @TableField("deleted")
    @Schema(description = "逻辑删除标记")
    private Boolean deleted;
}